Blocking television commercials and providing an archive interrogation program

ABSTRACT

An apparatus and method is disclosed for blocking specific television commercials from the viewer&#39;s television based upon the characteristics of the television commercial. In the method, characteristics from a first signal containing a television commercial received at a television are determined. The characteristics may include video and/or audio characteristics, and the characteristics may define a signature. Characteristics from a second signal, also containing the television commercial, are also received and are compared to the first signature. Upon recognizing the second signal, the television commercial is blocked.

This application is a continuation of U.S. patent Ser. No. 12/253,818,filed Oct. 17, 2008, U.S. Pat. No. 8,359,613, patented on Dec. 29, 2012,which is a continuation of U.S. patent Ser. No. 10/205,550, filed onJul. 25, 2002, U.S. Pat. No. 7,454,772, patented on Nov. 18, 2008.

RELATED APPLICATIONS

This application is related to application Ser. No. 10/105,124,“Apparatus and Method of Searching for Desired Television Content,”application Ser. No. 10/116,613, “Apparatus and Method for BlockingTelevision Commercials and Displaying Alternative Programming,” and toSer. No. 10/205,538, “Apparatus and Method for Blocking TelevisionCommercials and Displaying Micro-Programming Content.”

FIELD OF THE INVENTION

The present invention relates to an apparatus and method for blockingundesired television commercials and providing a program for detectingand blocking the play at a television of repeated televisioncommercials.

BACKGROUND OF THE INVENTION

Debates today rage about both the delivery and funding of informationalcontent in all of its forms. On the Internet, many content providers aremoving away from their advertisement-based business models and movingtowards subscription-based business models. Despite rapid advances intechnology, the delivery mechanisms and methods of generating revenuefor content delivered through television broadcasts have been relativelystagnant, when compared to the delivery mechanisms and methods ofgenerating revenue for the Internet and web delivery systems. Intelevision broadcasts, advertisers still attempt to reach users usingthe same techniques that they have used for decades which are the thirtyand sixty second commercials interspaced throughout specific televisionprograms. In addition to technology, the viewer is becoming increasinglysophisticated and is demanding that every second of their time, whetherengaged in work or leisure pursuits, be well spent. For the vastmajority of television viewers, time engaged in viewing undesiredadvertisements is not considered time well spent. Therefore, a needexists for an apparatus and method of preventing a television viewerfrom viewing unwanted commercials.

Additionally, television viewers generally do not prefer to have periodsof interrupted programming or “dead air” when they are viewing aprogram. It would be preferable if the blocked commercial could bereplaced with user-defined alternative programming.

Application Ser. No. 10/116,613, “Apparatus and Method for BlockingTelevision Commercials and Displaying Alternative Programming” discloseda logical unit and a commercial blocking program in the logical unit toallow alternative viewing options so that the user may define thealternative programming to replace the unwanted communication. Thecommercial blocking program breaks all incoming television signals intotime, video and audio components and is able to recognize specificcommercials based on those components. Upon viewing an unwantedcommercial, the user indicates that he wants to block the commercialthrough one of a variety of input methods. The commercial blockingprogram then prevents the commercial from being displayed on the user'stelevision and causes alternative programming to be displayed instead.The user may configure the alternative programming via the alternativeprogramming logic. The user may configure the alternative programming asa universal television channel, based on the specific commercial, basedon the television station, based on the time of day, or based on anelaborate viewing hierarchy. At the end of the blocked commercial, thecommercial blocking program displays the television program that wasoriginally displayed on the user's television. Alternatively, thecommercial blocking program can buffer the various television programsreceived from the cable provider and record segments of the cable signalbased on certain keywords. The commercial blocking program searches foruser defined keywords, records television programs complying with thesearch terms, and displays the recorded television programming stored inthe memory.

Application Ser. No. 10/105,124, “Apparatus and Method of Searching forDesired Television Content, disclosed an apparatus and method forallowing a user to search for specific content across many televisionchannels in order to locate desirable television shows related to thesearched content. Multiplexed cable signals flow thorough a logical unitwhich buffers text associated with the voice stream of each station viathe pre-encoded closed-captioning signal or through the real-time voicetranslation within the logical unit. The user then enters search termsthrough one of a variety of different input devices. Upon entry of thesearch terms, the logical unit will compare the entered term with thoseavailable keywords stored in each buffer. Lexical parsing associatesterms which may differ from plural to singular forms or in tense.Additionally, synonym comparisons may be made. The logical unit willreturn a list of matches for the search criteria and allows the user theoption of going directly to the television program. The logical unitalso evaluates each returned item for its relevancy to the keywords.When not in use, the logical unit maintains a quiescent but monitoringstate permitting continuous creation of lexical buffers. This permitsthe user who turns the television on to immediately have such searchterms available. Alternatively, the logic is implemented at the cableprovider and enabled through interactive links to the home. In thatcase, the home logical unit is unnecessary.

What is needed is an archive of blocked television commercials and anapplication of the television content searching engine to the archive ofblocked television commercials so that a user may access an archive ofblocked commercials based upon a user search criteria.

SUMMARY OF THE INVENTION

The present invention, which meets the needs stated above, is anapparatus and method for blocking specific television commercials fromthe viewer's television based upon the characteristics of the televisioncommercial and a program to place the blocked television commercialsinto an archive. An archive interrogation program then acquires theusers search criteria and sends the search criteria to the contentsearch program for a list of matches. The matches are displayed to theuser and the user can select a segment for viewing.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an illustration of the invention interacting with a cableprovider and a television.

FIG. 2A is a flowchart of the commercial blocking program.

FIG. 2B is a flowchart of the commercial blocking program.

FIG. 2C is a flowchart of the commercial blocking program.

FIG. 3 is a flowchart of the search program.

FIG. 4 is a flowchart of the archive program.

FIG. 5 is a flowchart of the archive interrogation program.

FIG. 6 is a depiction of the data processing system contained within thelogical unit.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

The terms below are defined for all uses herein as follows:

“Alternate viewing” means content displayed in place of a blockedcommercial and may include one or more of the following: (1) a briefmessage displayed to inform the viewer that alternative programming willbe presented during the commercial interval; (2) an on-screen counter,showing how many seconds are left before the planned return to primaryviewing; and (3) directions to the tuner to go to a particular station.The directions to the tuner may be universal, by commercial, byoriginating station, by time of day, by definition of an elaborateviewing hierarchy, or to a micro-programming station or to bufferedmicroprogramming.

“Alternate viewing provider” means an entity that offersmicro-programming to a user for display in conjunction with a logicalunit.

“Archive” means a copy of one or blocked commercials that are saved forfuture reference or research.

“Buffered” means an alternate viewing package stored in the memory of alogical unit or at the cable service provider so that synchronizationproblems between the “switchover” point and the alternate programmingdelivery do not occur. In other words, when a request for alternativeprogramming is made, the logical unit can draw from a buffered alternateviewing package so that the user does not risk joining the alternateviewing package in progress.

“Buffering” means a process of examining the closed captioning text oraudio signal associated with television signals and configuring theexamined signal such that it may be searched for specific keywords.

“By commercial” means using content from a particular station to replacethe specifically identified commercial.

“By originating station” means using the original station to determinethe alternative content which will replace all blocked commercials.

“By time of day” means using the time of day to determine which stationto use as alternative content for all blocked commercials.

“Cable provider” means a company which provides television service tomultiple users and includes satellite television providers.

“Component signature” is a group of variables, based on a timecomponent, an X video component, a Y video component, and an audiocomponent, that is used to identify a commercial from all othercommercials when a “unique digital identifying tag is not available.

“Cumulative digital signature” means the aggregation of one or moreselected characteristics of a data sequence to provide a unique numberfor identification of the complete data sequence.

“Elaborate viewing hierarchy” means a combination of a plurality ofuniversal, by commercial, by originating station, or by time or dayalternative viewing formats.

“Lexical parsing” as used herein means a process of finding matches to adesired search term by comparing the desired search termletter-by-letter with the terms in an available database.

“Micro-programming,” means one or more “alternate viewing packages” thateach contain a complete information exchange or an entertainment packagein a segment of time that is adapted to fit into the time available fromone or more commercials blocked by a logical unit. For example, analternate viewing package could contain news headlines, weather updates,sports updates, or very short live action or animated shorts that aredesigned to entertain the user in a crisp, concise segment. An alternateviewing package would normally be thirty or sixty seconds in length butcould be designed for any length of time that a logical unit could makeavailable.

“Multiplex” means the process of funneling several different streams ofdata over a common communications line.

“Staggered time alternate viewing package” means an alternate viewingpackage broadcast on start times that are staggered for a number ofseconds to coincide with the time slots of blocked commercials. Forexample, an alternate viewing package may start at the top and bottom ofthe minute on a given station, and at 15 and 45 seconds on anotherstation. Accordingly, the station with the alternate viewing packagestart time closest to the start time of the blocked commercial would bechosen.

“Time synchronized” means an alternate viewing package, delivered ondemand in which the user joins the broadcast at the exact start point ofthe micro-program.

“Unique digital identifying tag” means a number sequence before theheader and after the trailer of each commercial. The number sequence isassigned according to an industry standard that allows each commercialto be identified from every other commercial.

“Universal” means using content from a particular station to replace allblocked commercials.

FIG. 1 is an illustration of the invention 100 interacting with a cableprovider and a television set. The depiction of the cable provider is byway of illustration only and is not intended to limit the scope of theinvention. Persons skilled in the art will recognize that the inventionmay be used with either a cable or wireless data transmission system.The cable provider (not shown) provides a television signal through acoaxial cable 102 that runs through the user's wall 104 and into logicalunit 106. Logical unit 106 analyzes the cable signal as described belowand displays the information on television 110 via television connection108. Logical unit 106 can optionally be combined with television 110.Alternatively, logical unit 106 may be placed at the same location asthe cable provider such that it is unnecessary to have logical unit 106at the user's location.

FIG. 2A is a flowchart of commercial blocking program 200 which operatesinside logical unit 106. Commercial blocking program 200 starts (202)whenever multiplexed cable signals are broadcast (204). In the preferredembodiment, each commercial has a unique digital identifying tag,similar to a serial number, which identifies a particular commercial.Logical unit 106 recognizes a particular commercial based on the uniqueidentifying tag.

In an alternate embodiment, logical unit 106 identifies commercials by a“component signature.” Multiplexed cable signals are defined by fourcomponents: a time component, an X video component, a Y video component,and an audio component. Every television program and/or commercial canbe readily identified by these components. There is generally allowedsome amount of time skew in the synchronization of the four componentsto identify the absolute beginning of a program or commercial. By takingthe time skew into consideration, commercial blocking program 200 canidentify a particular commercial. For example, a given pattern ofvideo/audio signals occurring at a time “delta” (perhaps but notnecessarily in the order of 500 microseconds) around the nominalbeginning of an advertisement, may point back to a specified commercial.

Alternatively, logical unit 106 establishes an “overall digitalsignature” for a particular commercial. In this event, the signal neednot be dissembled into its video/audio components as in the “componentsignature,” but rather, analysis of cumulative digital characteristicsmay be used to identify the commercial to be blocked. One or morecharacteristics of a data sequence is selected and aggregated to providea unique number for identification purposes of the complete datasequence. The advantage of using cumulative digital characteristics isthat all commercials could be blocked using this technique. In the caseof commercials to be identified by an “overall digital signature,” thelogical unit develops a library at the set-top of the “overall digitalsignature” of the blocked advertisements. For example, it may be assumedthat some time interval, “Tsample” is great enough to ascertain withaccuracies approaching one hundred percent the identity of a givenadvertisement. “Tsample” may be a sub-second or it may be multi-second,depending on the processing power behind the logical unit and theuniqueness of the commercial. Once a commercial signal is detected to beidentical to a blocked advertisement, then the logical unit takes theactions it has been programmed to implement.

As a commercial airs, the user has the option of blocking the commercial(206) by means of commercial blocking program 200 located in the localmemory 209 of logical unit 106 (See FIGS. 1 and 6). If the user choosesnot to block the commercial, then commercial blocking program 200 allowsthe commercial to air (207) and returns to step 206. If at step 206 theuser chooses to block the commercial, then the logical unit will blockthe commercial (208). In blocking the commercial, the logical unitprevents the specific commercial from displaying on the user'stelevision and displays alternative content instead (210). Aftercommercial blocking program 200 has displayed the alternativeprogramming, the original programming of the original television channelis displayed (212) and commercial blocking program 200 ends (214).

There are many different types of alternative programming thatcommercial blocking program 200 can display on the user's televisioninstead of the blocked commercial. In one embodiment, commercialblocking program 200 can display a blank screen for the duration of theblocked commercial. However, in the preferred embodiment, commercialblocking program 200 displays the programming according to alternativeprogramming logic 250 in FIGS. 2B and 2C. Alternative programming logic250 starts (252) and queries the user if he or she would like to definethe alternative programming as a universal television channel that willreplace all blocked television commercials (254). A universal televisionchannel is one which will display the contents of a specific televisionchannel on the user's television whenever the blocked commercial airs.For example, whenever a blocked commercial airs, commercial blockingprogram 200 will cause the The Weather Channel to be displayed. Auniversal television channel may include Web TV or any programmingvariation that may be made available to the user of the television towhich the logical unit is connected. If the user determines that theywould like to select a universal alternative channel, then the userspecifies which channel is the universal television channel (256) andalternative programming logic 250 ends (294). If at step 254 the userdetermines that he or she would not like to select a universaltelevision channel, then alternative programming logic 250 queries theuser if he or she would like to define the alternative programming basedon the blocked commercial (258). Alternative programming based on theblocked commercial will display a particular television channel whenevera specific blocked commercial airs. For example, whenever commercial Xairs, commercial blocking program 200 will cause The Weather Channel tobe displayed. If the user determines that he or she would like to definethe alternative programming based on the blocked commercial, then theuser selects a specific television channel that will display wheneverthe specific television commercial airs (260) and alternativeprogramming logic 250 ends (298). If the user determines at step 258that he or she do not want to define the alternative programming basedon the commercial, alternative programming logic 250 queries the userwhether he or she would like to define alternative programming based onthe television channel (262). Alternative programming based on thetelevision channel will display television content based on a preferredtelevision channel and a contingent television channel when the blockedcommercial airs. For example, whenever a blocked commercial airs, TheWeather Channel will be displayed, and in the event The Weather Channelis already being displayed, then CNN will be displayed. If the userdetermines that he or she would like to define the alternativeprogramming based on the television channel, then the user defines thepreferred and contingent television channels (264) and alternativeprogramming logic 250 ends (298). If at step 262 the user determinesthat he or she does not want to define alternative programming based onthe television channel, then alternative programming logic 250 queriesthe user whether he or she would like to define alternative programmingbased on the time of day (266). Alternative programming based on thetime of day displays a specific television channel depending on the timeof the blocked commercial. For example, if the blocked commercial airsbefore noon, The Weather Channel will be displayed, and if the blockedcommercial airs after noon, CNN will be displayed. If the user wouldlike to define the alternative programming based on the time of day,then the user defines the alternative television channels and the timeassociated with each alternate channel (268) and alternative programminglogic 250 ends (298). If at step 266 the user determines that he or shedoes not want to define the alternative programming based on the time ofday, alternative programming logic 250 queries the user whether he orshe would like to define alternative programming based on an elaborateviewing hierarchy (270).

An elaborate viewing hierarchy is a combination of the alternativeprogramming determinations in steps 254, 258, 262, and 266. There arenumerous possible combinations of the programming determinations thatwill create elaborate viewing hierarchies. For example, one possibleelaborate viewing hierarchy would be “whenever a blocked commercialairs, display The Weather Channel; however, if there is also a blockedcommercial on The Weather Channel, then go to CNN before noon and CNBCafter noon.” The elaborate viewing hierarchy may offer the user theoption to “mix and match” various combinations of blocked and unblockedsignals. For example, the user may select a split screen option wherethe blocked commercial appears in a portion of the screen whilealternate programming appears in the remaining portion of the screen.The user may select an option that will display alternative programmingwhile also displaying the close captioned text of the blockedcommercial. Further in the alternative, the user may elect to have morethan one alternate programming option displayed. For example, the usermay elect to have a split screen display CNN on one portion of thescreen and the Weather Channel on the other portion of the screen. Ifthe user would like to define an elaborate viewing hierarchy, then theuser enters the appropriate information (i.e. time, channel, andcommercial) to define the hierarchy (272) and alternative programminglogic 250 ends (298). If at step 270 the user determines that he or shewould not like to define an alternative viewing hierarchy, alternativeprogramming logic 250 goes to step 282 (See FIG. 2C).

Next a determination is made as to whether the user wants to selectmicro-programming (282). If the user does not want to selectmicro-programming, alternate programming logic 250 ends (298). If atstep 282 the user determines that he or she wants to selectmicroprogramming, a determination is made as to whether staggered timealternate viewing packages are desired (284). If staggered timealternate viewing packages are desired, then the selection is entered(286) and alternate programming logic 250 goes to step 296. If staggeredtime alternate viewing packages are not selected, then a determinationis made as to whether the user wants to select time synchronizedalternate viewing packages (288). If the user desires to selected timesynchronized alternate viewing packages, then the selection is entered(290) and alternate programming logic 250 goes to step 296. If the userdoes not select time synchronized alternate viewing packages, then adetermination is made as to whether a buffered alternate viewing packageis desired (292). If a buffered alternate viewing package is desired,then the selection is entered (294). If a buffered alternate viewingpackage is not desired, then a determination is made as to whetheranother selection is made (296). If another selection is to be made,alternate programming logic 250 goes to step 284. If another selectionis not to be made, alternate programming logic 250 ends (298). A defaultoption may also be available if the alternate viewing service providerplays continuously broadcast alternate viewing packages. In that casethe default option would be that the television would move to thealternate viewing broadcast at the time of the blocked commercial andpick up the alternate viewing package playing at that time.

In an alternative embodiment of alternative programming logic 250, anegative determination at step 296 would send the user back to step 254so that the options may be viewed again. Additionally, there are othertypes of alternative programming which may be displayed at step 210. Theuser can then enter search criteria and search program 200 will recordthe television signal based on the specific time, channel, and/orkeywords. For example, whenever “and now your local forecast” is foundin the audio component of the cable signal for The Weather Channel,logical unit 106 can record the accompanying local forecast.Additionally, logical unit 106 can be set to record a specific show. Forexample, logical unit 106 could be set to record the 11 a.m. SportsCenter on ESPN. In either case, the recorded programming can bedisplayed in place of the blocked commercial.

FIG. 3 is a flowchart of the search program contained within logicalunit 106 of the present invention. Search program 300 starts (302) andlogical unit 106 receives the cable signal transmitted by the cableprovider (304). The cable signal is multiplexed and comprises at least avisual signal, an audio signal, and a closed caption text signal.Moreover, the multiplexed cable signal is not limited to real-time cableprogramming. The multiplexed signal may also contain informationregarding past and future television programs. As logical unit 106receives the signal, search program 300 continuously buffers thetransmitted multiplexed cable signal (306). In buffering the signal,search program 300 obtains the closed-caption text from the cable signaland store the words contained in the captioning text along with thetelevision channel number and time of the television program.Alternatively, search program 300 can buffer the television signal byanalyzing the audio signal and buffering the keywords from the audiosignal. The text buffering described above is known in the art.Furthermore, the buffering process is not limited to one televisionchannel or one specific time period. If a user desires to bufferdifferent channels at different times, then the user may do so by meansof search program 300. For example, if search program 300 has ten hoursof buffering time available, the user can have search program 300 bufferten hours of a channel such as Cable Network News (CNN). Alternatively,search program 300 can buffer four hours of CBS, four hours of CNN, andtwo hours of the weather channel. Furthermore, the buffering times donot have to be similar. The user can define the CBS buffering time from5 am to 9 am, the CNN buffering time from 8 am to noon, and the weatherchannel from 1 pm to 3 pm. Additionally, search program 300 is notlimited to the English language. Search program 300 is capable ofbuffering television in multiple languages simultaneously. Thus, at anygiven time search program 300 is capable of buffering an enormousvariety of television programs.

The user then enters keyword terms that represent the search criteriafor search program 300 (308). The search terms can be entered via akeyboard, stylus, infrared port, or on-screen programming. In enteringthe search terms, search program 300 will recognize conventional Booleansearch terms such as “AND”, “OR”, and “NOT”. Search program 300 iscapable of accepting wildcard search terms. For example, the wildcardsearch term “run*” would search for run and all possible variations suchas runner, running, runners, and so on. Search program 300 also compareseach of the search terms to a dictionary database. If any of the searchterms are not in the dictionary database, search program 300 willdetermine related words using lexical parsing and query the user if theterms are relevant to the desired search. Lexical parsing solves theproblem of tense variation in the search terms. Search program 300 isalso capable of resolving ambiguities in entered search terms bycomparing the search terms to the dictionary database. Those skilled inthe art are aware of how to configure a search program to resolveambiguities. In alternative embodiments, the query step can be removedwhere search program 300 automatically adds the lexically parsed wordsto the list of search terms. Additionally, the search criteria cancomprise a date restriction (i.e. only today's programs, only programson this week, or only programs on Tuesdays). Furthermore, the searchcriteria can comprise restrictions based on specific channels (i.e. onlyprograms on ESPN, DISCOVERY, CNN, or VH1, or alternatively, onlyprograms on channels 8, 12, 25, 45, or 54).

Search program 300 then compares the search terms to the buffered text(310). Search program 300 will compare the search terms to the termscontained within the buffer. In comparing the search terms with thebuffered programs, search program 300 will also create a list of synonymsearch terms. By accessing a thesaurus database, search program 300 canobtain relevant synonyms and use those terms to search the buffered textas well. When the search term matches a word in the buffered text,search program 300 will mark the program and continue to search throughthe rest of the buffered text. When the entire buffered text has beensearched, search program 300 evaluates the relevancy of each flaggeditem. In evaluating the relevancy of each flagged item, search program300 looks to the original search terms, the synonyms search terms, thelexically parsed search terms, and the date, time and channel specifiedby the user. Search program 300 then ranks the flagged items from mostrelevant to least relevant.

Search program 300 then displays the list of television programs whichwere previously marked in step 310 (312). Search program 300 willorganize the results of the search according to how well they correspondto the entered search criteria. The results of the search are displayedwith the time and television channel pertaining to the televisionprogram. The user then browses the television programs returned in step312 (314) and makes a determination whether they would like to conductanother search (316). If the user does want to conduct another search,search program 300 returns to step 308. If the user does not want toconduct another search, the user makes a determination whether theywould like to select a television program (318). If the user decides toselect a television program, the user selects a television program,search program 300 displays the selected television program (320), andsearch program 300 ends (322). If the user does not want to select atelevision program, then search program 300 ends (322).

FIG. 4 is a depiction of the flowchart for archive program 400. Archiveprogram 400 begins (402) and the user selects an archive option from thelogical unit (410). A television signal is received by the logical unit(420) and the logical unit identifies a segment of the signal to block(430). The logical unit blocks the identified segment (440) and sendsthe blocked segment to the archive (450). A determination is made as towhether or not there is another signal to be analyzed (460). If there isanother signal to be analyzed archive program 400 goes to step 410. Ifthere is not another signal to be analyzed, archive program 400 ends(470).

FIG. 5 is a depiction of the flowchart for the archive interrogationprogram (AIP) 500. AIP 502 begins and the user selects the AIP optionfrom the logical unit (510). The user enters the search terms desired tolocate commercials in a particular area of interest (512). The logicalunit compares the search terms to text in the archived segments (514).The logical unit returns a list of matches (516). The user browses thelist of matches (516). A determination is made as to whether the userwants to select a segment (522). If the user wants to select a segment,the user selects a segment from the list of matches (524). AIP 500 sendsthe selected segment to an open channel for viewing (526). Adetermination is made as to whether the user wants to conduct anothersearch (528). If the user wants to conduct another search, the AIP 500goes to step 512. If the user does not want to conduct another search,AIP 500 ends (530).

FIG. 6 is a depiction of the data processing system 600 contained withinlogical unit 106 (See FIG. 1). Data processing system 600 comprisesprocessor 602, boot rom 604, and LCD controller 605 coupled to systembus 606. Also connected to system bus 606 is memory controller/cache608, which provides an interface to local memory 609. I/O bus bridge 610is connected to system bus 606 and provides an interface to I/O bus 612.Memory controller/cache 608 and I/O bus bridge 610 may be integrated asdepicted. Peripheral components are connected via I/O bus 612. Typicalperipheral components include Universal Asynchronous ReceiverTransmitter (UART) 618, a keypad or touch screen 620, digital-to-analogconverters 628, analog-to-digital converters 630, serial interfacecontroller 640, clocks and timers 642, cable output to the television644, power controller 646, cable input from the cable provider 648, andinfrared ports 650. Those skilled in the art will appreciate thedepiction of data processing system 600 in FIG. 3 is exemplary and isnot intended as an architectural limitation of the present invention.Data processing system 600 may be a separate single controller.

Many optional features can be displayed along with the alternativeprogramming. For example, it may be beneficial to display a timer in thecorner of the screen which shows the time remaining until the end of theblocked commercial. Additionally, the user may desire to have a briefdescription of which commercial is being blocked. Moreover, the user maywish to have a timer counting down the amount of time until the desiredtelevision content returns. Furthermore, the inventive concept containedherein can be utilized to block all commercials and display only desiredprogramming. Alternatively, the logical unit can buffer the entiremultiplexed signal, delay the signal a pre-determined time (i.e. sixtyseconds) and block out all television programming that is not greaterthan sixty seconds. This would block all thirty and sixty secondtelevision commercials. This implementation can also be orchestrated atthe cable provider rather than the user's television or the logicalunit. The user may have the option to block selected commercialspermanently (without the recourse to unblock the commercial at a latertime) while designating other commercials as non-permanently blockedcommercials (with the recourse to unblock the commercial at a latertime). The user may have the option to block all previously blockedcommercials (and to view new commercials) or to block all commercials.In addition, the user may be provided with the option to block, unblockand access the programming of the logical unit by means of voicecommands or audible signals such as clapping.

With respect to the above description then, it is to be realized thatthe optimum dimensional relationships for the parts of the invention, toinclude variations in size, materials, shape, form, function and mannerof operation, assembly and use, are deemed readily apparent and obviousto one skilled in the art, and all equivalent relationships to thoseillustrated in the drawings and described in the specification areintended to be encompassed by the present invention.

What is claimed is:
 1. A method for selectively blocking a televisioncommercial from a first television channel rendering by a television,the method comprising the steps of: receiving, by one or more processorsfrom a user, an identification of a second television channel to provideaudio and video content to substitute for a subsequent broadcast of thetelevision commercial from the first television channel; receiving, byone or more processors, a first broadcast signal from the firsttelevision channel that is currently being rendered on the televisionand contains the television commercial; determining, by one or moreprocessors from the first broadcast signal, a plurality of video andaudio characteristics of the television commercial which form, at leastin part, a signature for the television commercial; receiving, by one ormore processors, a second, subsequent broadcast signal from the firsttelevision channel while the television is tuned to the first televisionchannel; and determining, by one or more processors, that the secondbroadcast signal contains the signature; and in response, rendering,with audio or video, current content from the second broadcast channel,wherein the television is tuned to the second broadcast channel.
 2. Themethod according to claim 1 wherein the plurality of video and audiocharacteristics include an x video component, a y video component, andan audio component.
 3. The method according to claim 2 furthercomprising: aggregating, by one or more processors, the plurality ofvideo and audio characteristics obtained in a time interval of a datasequence for the second broadcast signal; determining, by one or moreprocessors based on aggregating the plurality of characteristics, aunique identifier that identifies the data sequence; and determining, byone or more processors, that the second broadcast signal contains thesignature based on the unique identifier.
 4. The method according toclaim 3 further comprising assigning, by one or more processors, a firstunique identifier for the plurality of characteristics obtained in atime interval of a data sequence for the first broadcast signal, andwherein determining, by one or more processors, that the secondbroadcast signal contains the signature includes comparing the uniqueidentifier from the second broadcast signal to the first uniqueidentifier.
 5. The method according to claim 4, further comprising:storing the first unique identifier in a library in a set top box forthe television; and comparing, by one or more processors, the uniqueidentifier from the second broadcast signal with a plurality of uniqueidentifiers in the library.
 6. A computer system for selectivelyblocking a television commercial from a first television channelrendering by a television, the computer system comprising: one or moreprocessors, one or more computer-readable memories and one or morecomputer-readable storage devices, and program instructions, stored onat least one of the one or more storage devices for execution by atleast one of the one or more processors via at least one of the one ormore memories, the program instructions comprising: program instructionsto receive, from a user, an identification of a second televisionchannel to provide audio and video content to substitute for asubsequent broadcast of the television commercial from the firsttelevision channel; program instructions to receive a first broadcastsignal from the first television channel that is currently beingrendered on the television and contains the television commercial;program instructions to determine, from the first broadcast signal, aplurality of video and audio characteristics of the televisioncommercial which form, at least in part, a signature for the televisioncommercial; program instructions to receive a second, subsequentbroadcast signal from the first television channel while the televisionis tuned to the first television channel; and program instructions todetermine that the second broadcast signal contains the signature; andin response, render, with audio or video, current content from thesecond broadcast channel, wherein the television is tuned to the secondbroadcast channel.
 7. The computer system according to claim 6 whereinthe plurality of video and audio characteristics include an x videocomponent, a y video component, and an audio component.
 8. The computersystem according to claim 7 further comprising: program instructions toaggregate the plurality of video and audio characteristics obtained in atime interval of a data sequence for the second broadcast signal;program instructions to determine, based on aggregating the plurality ofcharacteristics, a unique identifier that identifies the data sequence;and program instructions to determine that the second broadcast signalcontains the signature based on the unique identifier.
 9. The computersystem according to claim 8 further comprising: program instructions, toassign a first unique identifier for the plurality of characteristicsobtained in a time interval of a data sequence for the first broadcastsignal, and wherein determining that the second broadcast signalcontains the signature based on the unique identifier includes comparingthe unique identifier from the second broadcast signal to the firstunique identifier.
 10. The computer system according to claim 9 furthercomprising: program instructions to store the first unique identifier ina library in a set top box for the television; and program instructionsto compare the unique identifier from the second broadcast signal with aplurality of unique identifiers in the library.
 11. A computer programproduct for selectively blocking a television commercial at atelevision, the computer program product comprising: one or morecomputer-readable storage devices, and program instructions stored onthe storage devices, the program instructions comprising: programinstructions to receive, from a user, an identification of a secondtelevision channel to provide audio and video content to substitute fora subsequent broadcast of the television commercial from the firsttelevision channel; program instructions to receive a first broadcastsignal from the first television channel that is currently beingrendered on the television and contains the television commercial;program instructions to determine, from the first broadcast signal, aplurality of video and audio characteristics of the televisioncommercial which form, at least in part, a signature for the televisioncommercial; program instructions to receive a second, subsequentbroadcast signal from the first television channel while the televisionis tuned to the first television channel; and program instructions todetermine that the second broadcast signal contains the signature; andin response, render, with audio or video, current content from thesecond broadcast channel, wherein the television is tuned to the secondbroadcast channel.
 12. The computer program product according to claim11 wherein the plurality of video and audio characteristics include an xvideo component, a y video component, and an audio component.
 13. Thecomputer program product according to claim 12 further comprising:program instructions to aggregate the plurality of video and audiocharacteristics obtained in a time interval of a data sequence for thesecond broadcast signal; program instructions to determine based onaggregating the plurality of characteristics, a unique identifier thatidentifies the data sequence; and program instructions to determine thatthe second broadcast signal contains the signature based on the uniqueidentifier.
 14. The computer program product according to claim 13further comprising: program instructions to assign a first uniqueidentifier for the plurality of characteristics obtained in a timeinterval of a data sequence for the first broadcast signal, and whereindetermining that the second broadcast signal contains the signaturebased on the unique identifier includes comparing the unique identifierfrom the second broadcast signal to the first unique identifier.
 15. Themethod according to claim 1, further comprising: receiving, by one ormore processors from the user, an identification of a third televisionchannel; receiving, by one or more processors from the user, anidentification of a particular time of day; and responsive todetermining that the second broadcast signal includes the signature,rendering, with audio and video, current content from the secondbroadcast channel when a current time is before the particular time ofday and rendering, with audio and video, current content from the thirdbroadcast channel when the current time is after the particular time andday, wherein the television is tuned to the second broadcast channelprior to the particular time of day, and further wherein the televisionis tuned to the third channel after the particular time of day.
 16. Themethod according to claim 1, further comprising: receiving, by one ormore processors from the user, an identification of a third televisionchannel; determining, by one or more processors, that a third broadcastsignal from the second television channel contains the signature; andrendering, with audio and video, current content from the thirdbroadcast channel.
 17. The computer system according to claim 6, furthercomprising: program instructions to receive, from the user, anidentification of a third television channel; program instructions toreceive, from the user, an identification of a particular time of day;and program instructions, responsive to determining that the secondbroadcast signal includes the signature, to render, with audio andvideo, current content from the second broadcast channel when a currenttime is before the particular time of day and render, with audio andvideo, current content from the third broadcast channel when the currenttime is after the particular time and day, wherein the television istuned to the second broadcast channel prior to the particular time ofday, and further wherein the television is tuned to the third channelafter the particular time of day.
 18. The computer system according toclaim 6, further comprising: program instructions to receive, from theuser, an identification of a third television channel; programinstructions to determine that a third broadcast signal from the secondtelevision channel contains the signature; and program instructions torender, with audio and video, current content from the third broadcastchannel.
 19. The method according to claim 1, further comprising:determining, by one or more processors, that the second broadcast signalno longer contains the television commercial; and in response,rendering, with audio or video, current content from the first broadcastchannel, wherein the television is tuned to the first broadcast channel.20. The computer system according to claim 6, further comprising:program instructions to determine that the second broadcast signal nolonger contains the television commercial; and in response, render, withaudio or video, current content from the first broadcast channel,wherein the television is tuned to the first broadcast channel.